package sketch.ast;


/**
 * I have to put this class in that specific package, since the constructor of ASTNode
 * is only package-visible
 * */
public class GeneratorHole {
	
//	public static final int GENERATOR_HOLE = 99;
//	
	public String content = "**** The content has not been setted yet! ****";
//	
//	private String escapedValue = "\"\"";//$NON-NLS-1$
	
	public GeneratorHole() {
	}
	
	public void setContent(String content) {
		this.content = content;
	}

//	@Override
//	List internalStructuralPropertiesForType(int apiLevel) {
//		// TODO Auto-generated method stub
//		return null;
//	}
//	
//	@Override
//	void accept0(ASTVisitor visitor) {
//		Checker.checkTrue(visitor instanceof GeneratorCodePrinter, "The applicable visitor could " +
//				"only be GeneratorCodeVisitor.");
//		GeneratorCodePrinter holeVisitor = (GeneratorCodePrinter)visitor;
//		holeVisitor.visit(this);
//		holeVisitor.endVisit(this);
//	}
//	
//	//the following methods must be overridden!
//
//	@Override
//	int getNodeType0() {
//		return GENERATOR_HOLE;
//	}
//
//	@Override
//	boolean subtreeMatch0(ASTMatcher matcher, Object other) {
//		if(!(other instanceof GeneratorHole)) {
//			return false;
//		}
//		GeneratorHole otherHole = (GeneratorHole)other;
//		if(this.content == null && otherHole.content == null) {
//			return true;
//		} else if (this.content != null && otherHole.content != null) {
//			return this.content.equals(otherHole.content);
//		} else {
//			return false;
//		}
//	}
//
//	@Override
//	ASTNode clone0(AST target) {
//		GeneratorHole hole = new GeneratorHole(target);
//		hole.setContent(this.content);
//		return hole;
//	}
//
//	//approximate the size of the hole
//	@Override
//	int treeSize() {
//		return memSize();
//	}
//
//	@Override
//	int memSize() {
//		int size = BASE_NODE_SIZE + 1 * 4 + stringSize(this.escapedValue);
//		return size;
//	}

}
